package com.siashan.toolkit.core.wrapper;

import com.siashan.toolkit.core.enums.IBaseEnum;

/**
 * 接口请求状态
 *
 * @author siashan
 * @version V1.0.1
 */
public enum ResultCode implements IBaseEnum<Integer> {
    /**
     * 请求成功
     */
    SUCCESS(200, "请求成功"),

    /**
     * 参数列表错误（缺少，格式不匹配）
     */
    BAD_REQUEST(400, "参数列表错误（缺少，格式不匹配）"),

    /**
     * 未授权
     */
    UNAUTHORIZED(401, "未授权"),
    /**
     * 资源不存在
     */
    NOT_FOUND(404, "资源不存在"),


    /**
     * 请求超时
     */
    REQUEST_TIMEOUT(408,"请求超时"),

    /**
     * 请求失败
     */
    ERROR(500, "请求失败"),


    ;

    private int code;
    private String desp;

    ResultCode(int code, String desp) {
        this.code = code;
        this.desp = desp;
    }

    /**
     * 获取枚举的code属性值
     *
     * @return 枚举的code属性值
     */
    @Override
    public Integer getCode() {
        return code;
    }

    /**
     * 获取枚举描述
     *
     * @return 枚举的desp属性值
     */
    @Override
    public String getDesp() {
        return desp;
    }

}
